package proyectoX.src.armas;


import java.awt.Point;

import proyectoX.src.aplicacion.Nivel;
import proyectoX.src.municiones.MunicionLaser;
import proyectoX.src.municiones.MunicionLaserMediano;
import proyectoX.src.municiones.MunicionX;

/**
 * Clase genérica que corresponde al láser de cada nave jugadora.
 *
 */
public abstract class laser extends arma{
	//atributos
	protected int nivelPoder;  //indica el nivel del láser actualizado a través de powerups (no hay en este prototipo)
	protected int maximoNivel=3;

	/**
	 * Crea el arma con el nivel pasado por parámetro.
	 * @param municiones Cantidad de municiones.
	 * @param danio Daño del láser.
	 * @param n Nivel actual.
	 */
	public laser( int municiones,int danio,Nivel n){
		super(municiones,danio,n, 100);  //municiones = -1 para indicar que es INFINITO, todos los lasers tienen delay 100
		nivelPoder=1;
		tiempoUltimoDisparo = 0;

	}

	/**
	 * Aumenta en uno el nivel del láser.
	 */
	public void aumentarNivelPoder() {
		nivelPoder++;
	}

	/**
	 * Devuelve el nivel del láser.
	 * @return El nivel del láser.
	 */
	public int getNivelPoder() {
		return nivelPoder;
	}

	/**
	 * Devuelve el estado correspondiente al nivel máximo de láser posible.
	 * @return Verdadero si está en su nivel máximo, falso en caso contrario.
	 */
	public boolean alcanzoNivelMaximo() {		
		return nivelPoder==maximoNivel;
	}


}


